Packages

c

com.fsf.news.repository

SessionRepository

abstract class SessionRepository[T, ID] extends AnyRef

An abstract repository for storing entities in a session-based cache. The cache is implemented as an evicting queue, which ensures that only a limited number of entities are stored per session.

Annotations
@AllArgsConstructor()
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SessionRepository
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected
  3. Private

Instance Constructors

  1. new SessionRepository()

    Attributes
    protected[repository]

Abstract Value Members

  1. abstract def getId(entity: T): ID

    Extracts the unique identifier from the given entity.

    Extracts the unique identifier from the given entity.

    entity

    The entity from which to retrieve the ID

    returns

    The unique identifier of the entity

    Attributes
    protected[repository]

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clearSession(sessionId: String): Unit

    Removes all entities associated with the specified session.

    Removes all entities associated with the specified session.

    sessionId

    The session ID

  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  7. def deleteById(id: ID, sessionId: String): Unit

    Deletes an entity by ID.

    Deletes an entity by ID.

    id

    The entity ID

    sessionId

    The session ID

  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. def findAll(sessionId: String): List[T]

    Retrieves a list of all stored entities.

    Retrieves a list of all stored entities.

    sessionId

    The session ID

    returns

    A list of entities

  11. def findById(id: ID, sessionId: String): Optional[T]

    Finds an entity by its ID.

    Finds an entity by its ID.

    id

    The entity ID

    sessionId

    The session ID

    returns

    An Optional containing the entity, or an empty Optional if not found

  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  13. def getSessionQueue(sessionId: String): EvictingQueue[T]

    Retrieves the EvictingQueue associated with the given session ID.

    Retrieves the EvictingQueue associated with the given session ID.

    sessionId

    The session ID

    returns

    The EvictingQueue associated with the session ID, or an empty queue if not found

    Attributes
    protected[repository]
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  19. def save(entity: T, sessionId: String): T

    Adds a new entity to the repository and returns the entity.

    Adds a new entity to the repository and returns the entity.

    entity

    The entity to add

    sessionId

    The session ID

    returns

    The saved entity

  20. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

    (Since version 9)

Inherited from AnyRef

Inherited from Any

Ungrouped